package 每日一题;

import java.util.ArrayList;
import java.util.List;

/**
 * 118. 杨辉三角
 * 定一个非负整数 numRows，生成杨辉三角的前 numRows 行
 *
 */
public class Date1206 {

    /**
     * 借助题解思路：按行输出 对于每一行 首尾字符都是1 其他的第i个都是由上一行i-1+i号构成
     * @param numRows
     * @return
     */

    public List<List<Integer>> generate(int numRows) {

        List<List<Integer>> res = new ArrayList<>();
        for (int i=0;i<numRows;i++){
            List<Integer> row = new ArrayList<>();

            //因为i也是从0开始计数的 所以需要到i
            for (int j=0;j<=i;j++){
                if (j==0 || j== i){
                    row.add(1);
                }else {
                    row.add(res.get(i-1).get(j-1)+res.get(i-1).get(j));
                }

            }
            res.add(row);
        }

        return res;

    }
}
